Public Class FrmLogin 

    Private Sub BtnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCancelar.Click
        Application.Exit()
    End Sub
   
    Private Sub FrmLogin_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If FrmInicial Is Nothing Then

            'Verifica el serial de la maquina
            Try
                If Vinum.ReglaNegociosMetodos.SerialMethod.VerificarSiYaSeIngresoElSerial() = False Then
                    Hide()
                    FrmRegistrar.ShowDialog()
                Else
                    If SerialObj.DiasDePrueba <> 0 Then
                        DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.CantidadDiasTrial, SerialObj.DiasDePrueba), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information)
                    End If
                End If

            Catch ex As SqlException
                DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorAlIniciarElSistema, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
                Application.Exit()
            Catch ex As ReglaNegociosMetodosException
                DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorAlIniciarElSistema, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
                Application.Exit()
            Catch ex As Exception
                DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorDesconocido, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
                Application.Exit()
            End Try
        End If

        Try
            'Regresa los datos de configuracion
            If UsuarioObj.LoginConfiguracion <> "" Then
                TxtUsuario.Text = UsuarioObj.LoginConfiguracion
                ChkGuardarLogin.CheckState = CheckState.Checked
            End If

            If UsuarioObj.PasswordConfiguracion <> "" Then
                TxtPassword.Text = UsuarioObj.PasswordConfiguracion
                ChkGuardarPassword.CheckState = CheckState.Checked
            End If
        Catch ex As ReglaNegociosMetodosException
            DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorAlBuscarDatosDeUsuarioEnConfiguracion, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        Catch ex As Exception
            DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorDesconocido, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try

    End Sub

    Private Sub BtnAceptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAceptar.Click

        Try
            Dim Usuario As New UsuarioObj() With {.Login = TxtUsuario.Text.Trim, _
                                                  .PassWord = TxtPassword.Text.Trim}

            If UsuarioMethod.VerificarUsuario(Usuario) Then
                UsuarioActual = Usuario
                UsuarioMethod.GuardarDatos(IIf(ChkGuardarLogin.CheckState = CheckState.Checked, True, False), IIf(ChkGuardarPassword.CheckState = CheckState.Checked, True, False), Usuario)
                Hide()
                Dim _FrmInicial As New FrmInicial
                If _FrmInicial IsNot Nothing Then
                    _FrmInicial.Show()
                End If
            Else
                DevExpress.XtraEditors.XtraMessageBox.Show(My.Resources.ResMensajes.PasswordIncorrecto, My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Hand)
                TxtUsuario.Focus()
                TxtUsuario.SelectAll()
            End If

        Catch ex As SqlException
            DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorAlIngresarAlSistema, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
            Application.Exit()
        Catch ex As ReglaNegociosMetodosException
            DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorAlIngresarAlSistema, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
            Application.Exit()
        Catch ex As Exception
            DevExpress.XtraEditors.XtraMessageBox.Show(String.Format(My.Resources.ResMensajes.ErrorDesconocido, ex.Message), My.Application.Info.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
            Application.Exit()
        End Try
    End Sub
End Class